<?php
namespace app\common\controller;
use think\Controller;
use think\Db;

/**
 * 系统公共模型类，处理增、删、改、查
 */
class Crud extends Controller {
	
	protected $pk;
	protected $map;
	protected $type;
	protected $fields;
	protected $fields_en;
	protected $tableInfo;
	protected $table;	
	protected $order;
	protected $limit;
	
	protected function _initialize(){
	
	 parent::_initialize();

	 // 获取数据表所有信息
	 $this->tableInfo = Db::getTableInfo($this->table);
	
	 // 获取数据表所有字段
	  //$this->fields = Db::getTableInfo($this->table, 'fields');
		
	 // 获取数据表所有字段的类型
	  //$this->type = Db::getTableInfo($this->table, 'type');
		
	 // 获取数据表的主键
	  //$this->pk = Db::getTableInfo($this->table, 'pk');    
	 
	 //获取查询参数
	 $this->map();
	 
	 //获取查询字段
	 $this->inifield();

	 //获取排序参数
	 $this->order();
	 
	 //获取分页参数
	 $this->pagination();
	}
	
	/**
	 * 字段初始化
	 */
	 protected function inifield(){
			
	 }
	/**
	 * 增加
	 */
	 protected function doAdd(){
			
	 }
	/**
	 * 删除
	 */
	 protected function doDelete(){
			
	 }
	/**
	 * 修改
	 */
	 protected function doUpdate(){
		 
	 }
	/**
	 * 查询
	 */
	 protected function doFind(){

	 }
	/**
	 * 匹配
	 */
	 protected function map(){
			
		$this->map = ['status'=>1];
	 }
	/**
	 * 分页查询
	 */
	 protected function doList(){

	 }
	/**
	 * 默认排序
	 */
	 protected function order(){

		$this->order = $this->pk . ' asc';
	}
	/**
	 * 分页
	 */
	 protected function pagination(){
			$this->page = isset($_REQUEST['page']) ? intval($_REQUEST['page']) : 1; #是否预先设置了页码,如有没有则当前默认页码为1
			$this->rows = isset($_REQUEST['limit']) ? intval($_REQUEST['limit']) : 25; #是否预先设置了单页面行数,如没有则按照每页行数为10
			$this->offset = isset($_REQUEST['start']) ? intval($_REQUEST['start']) : ($this->page - 1) * $this->rows; #根据当前页码或请求参数设置偏移量
			$this->limit = "'" . $this->offset . ',' . $this->rows . "'";
		}	
}
?>